原帖 | Jack | 2025-05-29 22:17 | 👍2 | 阅读约1
I-Code-Bus, D-Code-Bus有什么区别?它们在如何取指令和数据?
I-Code-Bus,主要是纯粹的将指令从Flash或SRAM中取出送到Decode进行译码,然后进入ALU中进行运算,ALU运算完后会去更新LR,PC等。比如,ADD A1, A2, #1 这样的汇编指令。
PS:为什么说SRAM中也能取指令?因为在启动时,可以将SRAM将映射到0x00000000地址,从而进入到I-Code-Bus的访问空间里。这个应用在下载算法时会有应用。
D-Code-Bus,主要是从Flash中取出数据,比如const常量,存入内部通用寄存器,比如R1, R2等,但不包括PC, LR。
知识总结
相关笔记